package com.edais.domain.gift;

import java.math.BigDecimal;

import org.apache.commons.lang.StringUtils;

public class GiftSendDto {

	/**
	 * 用户基本信息
	 */
	private Long userId; // 用户id
	private String userName; // 用户名
	private String userMobile; // 用户手机号码

	/**
	 * 礼包基本信息
	 */
	private Long packageId; // 礼包id
	private String packageName; // 礼包名称
	private String packageType; // 礼包类型 (KCODE K码礼包 WELFARE 福利礼包)
	private String packageTypeName; // 礼包类型名称
	private String packageContent; // 礼包内容 JSON
	private String packageExchangeServiceName; // 礼包兑换实现类
	private String packageExchangeServiceParam;// 礼包兑换实现类参数

	/**
	 * k码及渠道基本信息
	 */
	private String kcode; // K码
	private String kcodeCardno; // k码卡号
	private String kcodeType; // K码类型 t_user_o2o_activity_info.mobile_kcode_sign
	private BigDecimal kcodeOriMoney; // K码原始金额
	private Integer kcodeDays; // K码礼包天数

	private Long kcodeChannelId; // k码渠道ID
	private String kcodeChannelName; // k码渠道名称
	private Long kcodeChannelUserId; // K码渠道合作商用户ID
	private BigDecimal kcodeChannelMoney; // K码渠道金额

	private BigDecimal kcodeLbAddMoney; // K码联币赠送金额
	private String kcodeLbAgencyName; // K码联币机构名称

	/**
	 * 联通手机号 合作模式3 判断联通手机号码激活次数
	 */
	private String unionMobile;

	// LINGDANG WEBSITE KCODEREG LBAndroid LBIOS
	private String activityPlatform; // t_user_o2o_activity_info.key_code_use_platform

	public String validate() {
		if (userId == null) {
			return "userId为空";
		}
		if (StringUtils.isBlank(userName)) {
			return "userName为空";
		}
		if (StringUtils.isBlank(userMobile)) {
			return "userMobile为空";
		}
		if (packageId == null) {
			return "packageId为空";
		}
		if (StringUtils.isBlank(packageName)) {
			return "packageName为空";
		}
		if (StringUtils.isBlank(packageType)) {
			return "packageType为空";
		}
		if (StringUtils.isBlank(packageTypeName)) {
			return "packageTypeName为空";
		}

		if (StringUtils.isBlank(kcode)) {
			return "kcode为空";
		}
		if (StringUtils.isBlank(kcodeCardno)) {
			return "kcodeCardno为空";
		}
		if (StringUtils.isBlank(kcodeType)) {
			return "kcodeType为空";
		}
		if (kcodeOriMoney == null) {
			return "kcodeOriMoney为空";
		}
		if (kcodeDays == null) {
			return "kcodeDays为空";
		}
		if (kcodeChannelMoney == null) {
			return "kcodeChannelMoney为空";
		}
		if (kcodeChannelId == null) {
			return "kcodeChannelId为空";
		}
		if (StringUtils.isBlank(kcodeChannelName)) {
			return "kcodeChannelName为空";
		}
		if (kcodeChannelUserId == null) {
			return "kcodeChannelUserId为空";
		}
		if (StringUtils.isBlank(kcodeLbAgencyName)) {
			return "kcodeLbAgencyName为空";
		}
		return null;
	}

	public Long getUserId() {
		return userId;
	}

	public void setUserId(Long userId) {
		this.userId = userId;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getUserMobile() {
		return userMobile;
	}

	public void setUserMobile(String userMobile) {
		this.userMobile = userMobile;
	}

	public Long getPackageId() {
		return packageId;
	}

	public void setPackageId(Long packageId) {
		this.packageId = packageId;
	}

	public String getPackageName() {
		return packageName;
	}

	public void setPackageName(String packageName) {
		this.packageName = packageName;
	}

	public String getPackageType() {
		return packageType;
	}

	public void setPackageType(String packageType) {
		this.packageType = packageType;
	}

	public String getPackageTypeName() {
		return packageTypeName;
	}

	public void setPackageTypeName(String packageTypeName) {
		this.packageTypeName = packageTypeName;
	}

	public String getPackageContent() {
		return packageContent;
	}

	public void setPackageContent(String packageContent) {
		this.packageContent = packageContent;
	}

	public String getPackageExchangeServiceName() {
		return packageExchangeServiceName;
	}

	public void setPackageExchangeServiceName(String packageExchangeServiceName) {
		this.packageExchangeServiceName = packageExchangeServiceName;
	}

	public String getPackageExchangeServiceParam() {
		return packageExchangeServiceParam;
	}

	public void setPackageExchangeServiceParam(String packageExchangeServiceParam) {
		this.packageExchangeServiceParam = packageExchangeServiceParam;
	}

	public String getKcode() {
		return kcode;
	}

	public void setKcode(String kcode) {
		this.kcode = kcode;
	}

	public String getKcodeCardno() {
		return kcodeCardno;
	}

	public void setKcodeCardno(String kcodeCardno) {
		this.kcodeCardno = kcodeCardno;
	}

	public String getKcodeType() {
		return kcodeType;
	}

	public void setKcodeType(String kcodeType) {
		this.kcodeType = kcodeType;
	}

	public BigDecimal getKcodeOriMoney() {
		return kcodeOriMoney;
	}

	public void setKcodeOriMoney(BigDecimal kcodeOriMoney) {
		this.kcodeOriMoney = kcodeOriMoney;
	}

	public Integer getKcodeDays() {
		return kcodeDays;
	}

	public void setKcodeDays(Integer kcodeDays) {
		this.kcodeDays = kcodeDays;
	}

	public Long getKcodeChannelId() {
		return kcodeChannelId;
	}

	public void setKcodeChannelId(Long kcodeChannelId) {
		this.kcodeChannelId = kcodeChannelId;
	}

	public String getKcodeChannelName() {
		return kcodeChannelName;
	}

	public void setKcodeChannelName(String kcodeChannelName) {
		this.kcodeChannelName = kcodeChannelName;
	}

	public Long getKcodeChannelUserId() {
		return kcodeChannelUserId;
	}

	public void setKcodeChannelUserId(Long kcodeChannelUserId) {
		this.kcodeChannelUserId = kcodeChannelUserId;
	}

	public BigDecimal getKcodeChannelMoney() {
		return kcodeChannelMoney;
	}

	public void setKcodeChannelMoney(BigDecimal kcodeChannelMoney) {
		this.kcodeChannelMoney = kcodeChannelMoney;
	}

	public BigDecimal getKcodeLbAddMoney() {
		return kcodeLbAddMoney;
	}

	public void setKcodeLbAddMoney(BigDecimal kcodeLbAddMoney) {
		this.kcodeLbAddMoney = kcodeLbAddMoney;
	}

	public String getKcodeLbAgencyName() {
		return kcodeLbAgencyName;
	}

	public void setKcodeLbAgencyName(String kcodeLbAgencyName) {
		this.kcodeLbAgencyName = kcodeLbAgencyName;
	}

	public String getUnionMobile() {
		return unionMobile;
	}

	public void setUnionMobile(String unionMobile) {
		this.unionMobile = unionMobile;
	}

	public String getActivityPlatform() {
		return activityPlatform;
	}

	public void setActivityPlatform(String activityPlatform) {
		this.activityPlatform = activityPlatform;
	}
}